package com.ynny.list01;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class ArrayListUse03 {

    public static void main(String[] args) {

        //集合修改和删除
        //<>泛型 规范当前集合里面的数据类型
        List<String> strings = new ArrayList<>();

        strings.add("苹果");
        strings.add("香蕉");
        strings.add("橘子");
        strings.add("菜");
        strings.add("菜");//检查 是否有重复数据

        System.out.println(strings);
        //修改
        //通过下标去修改数据
//        strings.set(3,"哈密瓜");
//        System.out.println(strings);
        //通过数据名称 寻找下标 得到下标后 再修改

        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入需要修改的水果名称:");
        String fruitName = scanner.next();
        //得到下标
        //indexOf返回的是第一次数据出现的下标
        //如果没有找到返回 -1
        //如果找到返回具体下标
        //可以循环操作 --进行重复修改
        int index = strings.indexOf(fruitName);
        System.out.println("当前"+ fruitName + "的下标=" + index );

        //一般需要做逻辑判断
        strings.set(index,"哈密瓜");
        System.out.println(strings);

        //删除
        //如果 集合里面装的是对象
        //在进行 对象里面的属性与键盘录入的字符串 进行遍历匹配的时候
        //通过名称删除 会有异常  需要间接通过 下标去删除
        System.out.println("请输入需要删除的水果名称:");
        String fruitNameByDelete = scanner.next();
        strings.remove(fruitNameByDelete);
        System.out.println(strings);

    }
}
